package com.zut.chat.util;

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

/**
 * 日期时间工具类
 */
public class DateTimeUtils {
    
    /**
     * 标准时间格式：yyyy-MM-dd HH:mm:ss
     */
    private static final DateTimeFormatter STANDARD_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    
    /**
     * 简短时间格式：MM-dd HH:mm
     */
    private static final DateTimeFormatter SHORT_FORMATTER = DateTimeFormatter.ofPattern("MM-dd HH:mm");
    
    /**
     * 格式化时间为标准格式（不带T字符）
     * @param dateTime 要格式化的时间
     * @return 格式化后的时间字符串，如：2025-09-17 19:33:04
     */
    public static String formatDateTime(LocalDateTime dateTime) {
        if (dateTime == null) {
            return null;
        }
        return dateTime.format(STANDARD_FORMATTER);
    }
    
    /**
     * 格式化时间为简短格式
     * @param dateTime 要格式化的时间
     * @return 格式化后的时间字符串，如：09-17 19:33
     */
    public static String formatDateTimeShort(LocalDateTime dateTime) {
        if (dateTime == null) {
            return null;
        }
        return dateTime.format(SHORT_FORMATTER);
    }
    
    /**
     * 格式化时间为友好的显示格式（用于禁言消息等）
     * @param dateTime 要格式化的时间
     * @return 格式化后的时间字符串
     */
    public static String formatForDisplay(LocalDateTime dateTime) {
        if (dateTime == null) {
            return "永久";
        }
        return formatDateTime(dateTime);
    }
} 